home *** CD-ROM | disk | FTP | other *** search
/ Internet Info 1994 March / Internet Info CD-ROM (Walnut Creek) (March 1994).iso / answers / comp / ibm-rt-faq / aos < prev    next >
Internet Message Format  |  1994-04-03  |  37KB

  1. Path: bloom-beacon.mit.edu!hookup!swrinde!news.uh.edu!lobster!antimatr!faq-rt
  2. From: faq-rt@antimatr.hou.tx.us (Mark Whetzel)
  3. Newsgroups: comp.sys.ibm.pc.rt,comp.answers,news.answers
  4. Subject: COMP.SYS.IBM.PC.RT: - AOS - Frequently Asked Questions
  5. Summary: This posting contains Frequently Asked Questions 
  6.          (and their answers) and general information, hints and tips
  7.          for using AOS on IBM RT (615x) computers.
  8. Keywords: IBM RT PC software FAQ 6150 6151 6152 AIX VRM AOS MACH PICK
  9. Message-ID: <ibmrt_aos_765425273@antimatr.hou.tx.us>
  10. Date: 4 Apr 94 02:08:06 GMT
  11. Expires: 8 May 94 02:07:53 GMT
  12. Sender: markw@antimatr.hou.tx.us
  13. Reply-To: aos-rt@antimatr.hou.tx.us
  14. Followup-To: comp.sys.ibm.pc.rt
  15. Lines: 887
  16. Approved: news-answers-request@MIT.Edu
  17. Supersedes: <ibmrt_aos_762779921@antimatr.hou.tx.us>
  18. Xref: bloom-beacon.mit.edu comp.sys.ibm.pc.rt:1492 comp.answers:4427 news.answers:17299
  19.  
  20. Archive-name: ibm-rt-faq/aos
  21. Last-modified: Fri Mar 25 07:27:56 CST 1994
  22. Version: 1.3
  23.  
  24. Frequently Asked Questions for:  AOS on IBM RT systems
  25.  
  26. Posted monthy to comp.sys.ibm.pc.rt. 
  27.  
  28. This is the third of three FAQ's dedicated to the IBM RT processor.
  29. This FAQ is dedicated to use of AOS (Academic Operating System),
  30. running on the IBM RISC processor known as the RT.  The RT is known
  31. also as an IBM model 6150 and IBM model 6151 machine.
  32.  
  33. The following informational items are correct to the best of my knowldge.
  34. Additions, corrections or suggestions are gladly accepted.  I want this
  35. list to be a dynamic article, with input by our readership.
  36.  
  37. All of the information in this list is specific for the IBM AOS.
  38. Unfortunately, I do not have access to any RT's that run AOS.  For problems
  39. with the information presented here, please contact me and I will try
  40. to contact the submitter of the information.
  41.  
  42. Discussions on AOS usage are generally handled in comp.sys.ibm.pc.rt.
  43. However, as AOS is a BSD derived port, so some discussions on its usage
  44. have also appeared in "comp.bugs.4bsd.ucb-fixes".
  45. Over time, RT speific questions have migrated to being discussed in the
  46. newsgroup comp.sys.ibm.pc.rt.
  47.  
  48. There are other FAQ lists I post covering different aspects of RT usage.
  49. One of the lists concerns questions dealing with the hardware aspects of the
  50. RT processor, common to all supported operating systems.  Also included in the
  51. hardware FAQ is a little history and backround on the IBM RT, its orgins,
  52. and some notes on its folklore.  The other FAQ I post covers the RT running
  53. the AIX V2 operating system.  Those FAQ's are also posted to this group with
  54. the same frequency.
  55.  
  56. This list is organized as a digest for newsreaders that can handle it. 
  57. Each "digest page" generally covers one topic or Question/Answer.
  58. You can jump to a particular topic by searching for that index key
  59. (such as S.1) in position 1 of this list.
  60.  
  61. Direct inclusions of information by some submitters is framed with a 
  62. line of "==**==**" repeating across the page.
  63.  
  64. In order to build up a better FAQ base, E-mail your contributions.
  65. I will respond back to you via mail on your submission.
  66. This FAQ is a work in progress.  Some entries are incomplete, and other
  67. information may be missing.  Places with ????? denote areas needing 
  68. more work or information.  Areas that I have made personal comments
  69. on are enclosed in square brackets []. 
  70.  
  71. Input is always welcomed for making this a better list.
  72. Style, grammar and spelling notes are also welcome.  Sometimes
  73. it seems that my brain operates faster than my fingers can type. :-)
  74.  
  75. This FAQ is archived by the news.answers automatic archivers. 
  76. The archive file names for ALL the RT FAQ files are:
  77.  
  78. General non-OS specific RT hardware .......  ibm-rt-faq/hardware
  79.  
  80. RT AIX FAQ Index, notes (this posting).....  ibm-rt-faq/aix-v2/index
  81. RT AIX OS specific harware issues .........  ibm-rt-faq/aix-v2/os-hardware/part1
  82. RT AIX software issues and usage ..........  ibm-rt-faq/aix-v2/software/part1
  83.                                              ibm-rt-faq/aix-v2/software/part2
  84.                                              ibm-rt-faq/aix-v2/software/part3
  85. RT AIX common questions and answers .......  ibm-rt-faq/aix-v2/misc/part1
  86.                                              ibm-rt-faq/aix-v2/misc/part2
  87. RT AIX Porting software notes .............  ibm-rt-faq/aix-v2/porting/part1
  88.  
  89. RT AOS topics have the archive name........  ibm-rt-faq/aos
  90.  
  91. One of the many archive sites is ftp.uu.net, filed as:
  92.     ~/usenet/news.answers/ibm-rt-faq/aos
  93.  
  94. For AIX RT  submissions E-mail to:   aix-rt@antimatr.hou.tx.us
  95. For AOS RT  submissions E-mail to:   aos-rt@antimatr.hou.tx.us
  96. For MACH RT submissions E-mail to:   mach-rt@antimatr.hou.tx.us
  97. For general Q&A submissions (hardware and other stuff) E-mail to:
  98.    faq-rt@antimatr.hou.tx.us
  99.  
  100. Other comments and correctons should be sent to the author:
  101.     Mark Whetzel
  102.     DOMAIN addr: markw@antimatr.hou.tx.us
  103.     BANG address:  ..!uhnix1!lobster!antimatr!markw
  104.     Daytime work number  8AM-5PM M-F CST  VOICE: (713) 963-2544
  105.  
  106.  ___--___---___--___---___--___---___--___---___--___---___--___---___--___
  107.  
  108. Changes for this April posting:
  109.    1) Added boot block creation information.
  110.    2) Need more entries covering aspects as disk managment, serial port
  111.       managment, printers, installation, ect..
  112.    3) Added information on location of async replacement code for
  113.       high-speed serial support.
  114.    4) Changed archive file information about AIX faq reorganization.
  115.  
  116.  ___--___---___--___---___--___---___--___---___--___---___--___---___--___
  117.  
  118. ------------------------------
  119. Index to the RT FAQ family of postings.
  120.  
  121.   Note: The entire hardware index is entered here. 
  122.         The answers in the hardware FAQ for these topics give the common
  123.         non-OS specifc answers.  Topics with an astrisk have been given more
  124.         specific information in this FAQ on that area as related to the
  125.         AOS operating system usage. AIX Subtopic listings are in the AIX
  126.         FAQ.  Section 5 is unique to this FAQ and covers only AOS topics.
  127.  
  128.   1.0   General Hardware questions with AOS specific extensions.
  129.  
  130.       * H.1   What is an IBM RT and some of its history?
  131.         H.2   What types of processors were made?
  132.         H.3   How fast are the different models of RT?
  133.         H.4   Can you upgrade from one processor type to another?
  134.         H.5   How can I tell what kind of processor type is installed?
  135.         H.6   Where can I get parts for RT systems?
  136.       * H.7   What adapter cards are supported in an RT running AOS.
  137.         H.8   What IBM perhiperials were available?
  138.         H.9   What cables are available?
  139.         H.10  What is the pinout of the 6150 serial ports?
  140.           How do I make my own RS232 cables compatible for use with AOS.
  141.         H.11  What is the pinout of the 6150/6151 Mouse/Tablet port?
  142.         H.12  What is the pinout of the 6150/6151 keyboard port?
  143.         H.13  Can I use a Non-RT keyboard on an RT?
  144.       * H.14  How do I get a parallel printer attached to an RT?
  145.         H.15  What are the switches on the Megapel adpater for?
  146.         Technicial information on Megapel adapter and display.
  147.         H.16  AT Co-Processor information.
  148.         H.17  How can I get the maximum data on a 6157 tape drive?
  149.               (Also covers different types of tapes to use.
  150.                flags for 'backup' and 'tar'.)
  151.       *    H.18  What hard disks can be used in an RT running AOS?
  152.               What value is the ESDI terminator resistor for an E70 drive?
  153.           Switch settings and meanings for E70, E114 and E310 drives.
  154.         H.19  What is the difference between an R70 and an E70 disk drive?
  155.         H.20  What are the characteristics of the various IBM RT disk drives?
  156.       * H.21  What SCSI devices can be attached?
  157.       * H.22  What do the LED codes mean during power on.
  158.       *    H.23  What does LED code xx mean (during AOS runtime)?
  159.         H.24  What is different about the RT I/O slots.
  160.               What cards will run in slot 8.
  161.         H.25  How do I run diagnostics.
  162.       * H.26  Serial port cards maximums and limitations.
  163.         H.27  What are the switches on the 3278/79 adpater?
  164.         H.28  Jumper location and information on AT Fixed disk adapter.
  165.         H.29  Jumper locations and information on ESDI adapter.
  166.         H.30  Jumper locations and information on EESDI adapter.
  167.         H.31  Jumper locations and information on the 'PORTED' EESDI adapter.
  168.         H.32  IBM 9332 Disk drive information.
  169.         H.33  Pin connections and technical information on 6153, 6154 and
  170.               6155 monitors. 
  171.     H.34  IBM 5081 Display technical information.
  172.         H.35  Jumpers and documentation on the Ungermann-Bass/IBM
  173.               ethernet board.
  174.         H.36  RT Token Ring card jumpers and addressing.
  175.         H.37  What are the differences between the 032, APC and EAPC
  176.               processor types.
  177.         H.38  Speed and capability of the Floating Point options for
  178.               the RT computers.  FPA, MC68881, AFPA.
  179.         H.39  Where can I obtain a replacement battery?
  180.  
  181.   2.0   AIX Specific Software issues.
  182.  
  183.   3.0   AIX Specific question and answers.
  184.  
  185.   4.0   AIX Specific Porting questions.
  186.  
  187.   5.0   AOS Specific Software issues.
  188.  
  189.     A.1   What is AOS?
  190.         A.2   What is the difference between AOS and AIX?
  191.         A.3   How do I get AOS?
  192.         A.4   What is the current version of AOS?
  193.         A.5   What patches are available for AOS?  How do I get them?
  194.         A.6   What are the different C compilers for AOS?
  195.         A.7   How do I make new SAUTIL and Installation Miniroot diskettes?
  196.         A.8   Where can I find an AOS device driver for:
  197.         A.9   Where can I get X11R5 for AOS and how do I get it running?
  198.     A.10  What other operating systems are available for the RT?
  199.         A.11  Using non-IBM ESDI drives with AOS.
  200.         A.12  Using a Non-IBM SCSI adapter with AOS.
  201.         A.13  Modifying AOS to support higher serial port speeds.
  202.         A.14  Creating boot records on ESDI disk drives.
  203.  
  204.   9.0   Credits, Acknolowgements, and other information.
  205.  
  206.         X.1  Acknolowegements and copyright information.
  207.         X.4  Credits for AOS.
  208.  
  209. ------------------------------
  210. H.1 - What is an IBM RT?
  211.  
  212.    More about this RT's history and information may be found in the
  213.    RT hardware FAQ. under this section heading.  A partial summary of
  214.    that entry is included here.
  215.  
  216.    The IBM RT is a RISC based processor designed by IBM, and unique to
  217.    that platform.  The RT was first announced by IBM in January 1986.
  218.    The processor is generally refered to as 032 processor.  In some
  219.    documentation it is also refered to as the 'ROMP' processor.
  220.  
  221.    The RT PC Advanced System Processor has a 32-bit Reduced Instruction 
  222.    Set Computer (RISC) architecture developed by IBM and implemented in 
  223.    a 1-micron CMOS technology.  It has sixteen 32-bit general purpose   
  224.    registers and uses 32-bit addresses and data paths. The              
  225.    microprocessor is controlled by 118 simple 2- and 4-byte             
  226.    instructions.  An IBM-developed advanced memory management chip      
  227.    provides virtual memory address translation functions and memory     
  228.    control.  It provides a 40-bit virtual address structure capable of  
  229.    addressing one terabyte of virtual memory. Internal processor
  230.    organization enables the CPU to execute most register-to-register 
  231.    instructions in a single cycle.                 
  232.       The model 115/125 RT PC with their FAST ECC memory, is capable
  233.    of providing the processor with a 32-bit word of data plus ECC each
  234.    100 nsec cycle.  This memory consists of 40 1-megabit IBM RAM chips.     
  235.    These chips are the same megabit technology used in the IBM 3090.    
  236.  
  237. ------------------------------
  238. H.7 - What adapter cards are supported in an RT running AOS.
  239.     
  240.       The IBM RT has what is called in the industry a ISA bus.  Based on
  241.       the original IBM PC AT bus in design, the RT has 8 I/O slots in the
  242.       tower (6150 model), and 6 slots in the desktop (6151 model).
  243.       Slot 3 and 6 on the tower model and slot 1 on the desktop models are
  244.       eight bit style slots.  Slot 8 on the tower and slot 5 on the desktop
  245.       model are wired slightly different than standard.  See the hardware
  246.       FAQ for more information.
  247.      
  248.       All adapters listed in this section on the hardware FAQ are
  249.       supported by AOS.  Other adapter cards can be used with the proper
  250.       device drivers configured into the system.
  251.  
  252.       Technically, any adapter that conforms to ISA standards would work
  253.       provided there are appropiate device drivers AND no conflicts with
  254.       existing adapters registers and bus addresses.
  255.  
  256.       The RT diagnostics program disks IBM supplied are unfortunately
  257.       rather particular about OEM cards that attempt to emulate IBM adapters.
  258.       This can sometimes lead to problems running diagnostics, where the AOS
  259.       system will otherwise run fine under regular operation.
  260.       Unknown adapter cards will be ignored.
  261.  
  262.       [ More needed on AOS support of OEM interface boards. - MW ]
  263.  
  264. ------------------------------
  265. H.18 - What hard disks can be used in an RT with AOS?
  266.  
  267.      At this time the hardware FAQ lists all known drives supported
  268.      by IBM with an RT running AOS.
  269.  
  270.      To use a NON-IBM ESDI drive on an RT with the IBM Extended ESDI
  271.      controller, it will need a feature called a 'short index pulse'.
  272.        
  273.      More notes on AOS drive useage can be found in section A.11 and A.14.
  274.  
  275.    [ Are there any other disk drive hardware problems unique to AOS? -MW ]
  276.  
  277. ------------------------------
  278. H.21 - What SCSI devices can be attached?
  279.  
  280.      The regular IBM suported SCSI adapter is slightly different from most
  281.      workstation adapters.  IBM chose to implement their adapter with the
  282.      'Differential Driver/Receiver option' and with the 'Alternative 2
  283.      connector' as per the proposed ANSI standard SCSI-1.  The SCSI
  284.      interface conforms to (then) proposed ANSI standard X3T9.2/82-2
  285.      Revsion 17B.  
  286.  
  287.      Two wires are used for each signal lead in a push-pull signaling
  288.      method also called 'differential-ended'.  What this boils down to
  289.      is that the IBM SCSI card is electriclly incompatible with a lot
  290.      of the off-the-shelf SCSI drives.  Most drives for other workstations
  291.      and PC's use a 'single-ended' SCSI implementation.
  292.      
  293.      IBM officially supported only one device attached to the SCSI
  294.      interface card, the IBM 9332 'Athens' disk drive.
  295.  
  296.      Using a Non-IBM SCSI adapter and single ended disks is possible with
  297.      AOS using a different SCSI card, and additional device driver support. 
  298.      See question A.12 on how to add this support.
  299.  
  300.      [ More information is needed on AOS support of SCSI disks. - mw ]
  301.  
  302. ------------------------------
  303. H.22 - What do the LED codes mean during power on.
  304.  
  305.        The initial IPL sequence of LED codes are listed in the hardware FAQ.
  306.        After LED code 22 and 26 is displayed control is passed to the
  307.        loadable boot code.   When AOS is starting up, a 00 is placed in 
  308.        the display.
  309.  
  310. ------------------------------
  311. H.23 - What does LED code xx mean (during AOS runtime)?
  312.  
  313.      ==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**
  314.      Submitter: Christopher J. Vandemore
  315.      Subject: AOS LED Numbers
  316.      Date: Wed, 15 Dec 1993 22:31:11 -0800
  317.  
  318.      The FAQ asks about run-time LED codes.  What follows is a 
  319.      direct transcription from "IBM Academic Information Systems
  320.      4.3 for the IBM RT PC Volume II" (C) IBM 1985, 1986, 1987.
  321.  
  322.      LED Numbers
  323.  
  324.      The LED displays show the following numbers during a boot
  325.      of the 4.3/RT system:
  326.      
  327.      o 00,01,03,09,10,14,15,16,17 - part of the internal power-on
  328.                                     sequence.
  329.      o 22-29 - booting from diskette.
  330.      o 22, with diskette drive light flashing - not an IBM RT PC boot
  331.        diskette in drive, or drive door not closed.
  332.      o 94 - kernel stack overflow.
  333.      o 96 - unsupported memory configuration.
  334.      o 98 - /boot not found on hd0a.
  335.      o 99 - key is in locked position.
  336.      
  337.      If no numbers are displayed, the system has been halted by 
  338.      /etc/halt.
  339.      
  340.      When 4.3/RT is running, the LED display shows the "load average"
  341.      for the system.  A lightly loaded system will display numbers
  342.      ranging between "00" and "15" (meaning 0.0 and 1.5).  A heavily
  343.      loaded system will display numbers greater than "50" (5.0).
  344.  
  345.      ==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**
  346.      Submitter: Mark Dapoz     Bergen Scientific Centre, Bergen, NORWAY
  347.  
  348.      >I'm wondering if anyone using BSD knows what a blinking 89 on the
  349.      >LED means on bootup.....???
  350.  
  351.      Sure, from led.h:
  352.  
  353.       /* kernel warning LED value */
  354.       #define LED_NO_SCREEN   0x99    /* no output screen found */
  355.       
  356.       /* non-recoverable kernel errors */
  357.       #define LED_BAD_SP      0x94    /* bad kernel stack */
  358.       #define LED_INT_SP      0x96    /* bad kernel stack (interrupt) */
  359.       #define LED_MEM_CONFIG  0x97    /* invalid memory configuration */
  360.       /* standalone errors */
  361.       #define LED_NOBOOT      0x98    /* bootxx could not find /boot */
  362.       
  363.       /* other known values for the led's (from ROS) */
  364.       #define LED_KEY_LOCK    0x99   /* key is in lock position */
  365.       #define LED_MC_CHECK    0x88   /* machine check during machine check ?? */
  366.       #define LED_PC_CHECK    0x89   /* program check during program check ?? */
  367.      ==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**
  368.  
  369. ------------------------------
  370. H.26 - Serial port cards maximums and limitations.
  371.  
  372.       With special kernel modifications, AOS can exceed the rated 19.2Kb
  373.       speeds published by IBM.
  374.  
  375.       More details on this can be found in section A.13.
  376.  
  377.  
  378. ------------------------------
  379. 5.0  AOS Specific Software questions
  380.  
  381. A.1  - What is AOS?
  382.  
  383.      Submitter: Keith Moore     date: Mon Apr 12 17:14:45 1993
  384.  
  385.      The IBM Academic Operating System is a port of 4.3 BSD to the RT,
  386.      with a few extra features (like NFS) that weren't included in 4.3
  387.      BSD.  It was only distributed to universities as an alternative 
  388.      to AIX.
  389.  
  390. ------------------------------
  391. A.2  - What is the difference between AOS and AIX?
  392.  
  393.      AOS is a port of BSD 4.3 directly to the RT hardware, whereas AIX V2
  394.      is a SYSV base system with BSD 4.2 merged and additional BSD 4.3
  395.      support added later.  AOS does not require VRM, as it is in
  396.      direct control of the hardware.  
  397.  
  398.      [ More needed on the differences. - MW ]
  399.  
  400. ------------------------------
  401. A.3  - How do I get AOS?
  402.  
  403.      ==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**
  404.      Submitter: Keith Moore     date: Mon Apr 12 17:14:45 1993
  405.  
  406.      You can't.  At least, not unless the organization you work for
  407.      is already one of the licensees...perhaps in another department.
  408.      Then you just have to find them and convince them to give you the
  409.      tapes and the manuals.
  410.      ==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**
  411.  
  412. ------------------------------
  413. A.4  - What is the current version of AOS?
  414.  
  415.      The last release was dated December 22, 1988.
  416.  
  417.      NOTE: More is needed on information related to AOS releases and
  418.            patches.  
  419.  
  420.      [ I'm leaving this following query intact in this section in hopes of
  421.      discovering more about other releases of AOS and information. - MW ]
  422.  
  423.      ==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**
  424.      From: davids@engin.umich.edu (David Snearline)
  425.      Subject: Dec. 1990 AOS release for 6152
  426.      Date: 7 Sep 93 02:25:39 GMT
  427.  
  428.      Does anyone have the Dec. 1990 release tape of AOS for the 6152 RT
  429.      (crossbow in PS/2 Academic System)?
  430.  
  431.      I currently have the Sep. 1988 release, and am looking for the later
  432.      release so as to put multiple crossbow cards in a single [ 6152 ] RT. 
  433.      I've checked around here, but the Dec. 1990 AOS we have left is for
  434.      the 6150 style RTs -- no PC code.  No idea where the 6152 tape went...
  435.      ==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**
  436.  
  437. ------------------------------
  438. A.5  - What patches are available for AOS?  How do I get them?
  439.  
  440.      ==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**
  441.      Submitter: Keith Moore     date: Mon Apr 12 17:14:45 1993
  442.  
  443.      Several patches were made available by IBM through their uucp
  444.      machine 'ibmsupt', and later on, to the Usenet newsgroup
  445.      comp.sys.ibm.pc.rt.  (Sorry, 'ibmsupt' was shut down a long 
  446.      time ago.)
  447.  
  448.      ftp.cis.ufl.edu (128.227.100.252) replaces bikini.cis.ufl.edu (now
  449.      out of service) and has most of the "official" patches, along with a
  450.      few other files, available for anonymous ftp in the directory
  451.      "ibm-rt-fixes".  See the file "Index" in that directory for descriptions.
  452.  
  453.      Also check out jim.ultra.nyu.edu, directory "rtfixes".  This
  454.      contains official patches to AOS plus several other random files
  455.      full of useful info.
  456.  
  457.      Also, several 4.3BSD patches were posted to the Usenet newsgroup
  458.      "comp.bugs.4bsd.ucb-fixes"; these are available for anonymous ftp
  459.      from vangogh.cs.berkeley.edu, directory 4.3/ucb-fixes, and also
  460.      from several other sites.
  461.      ==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**
  462.  
  463. ------------------------------
  464. A.6  - What are the different C compilers for AOS?
  465.  
  466.      ==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**
  467.      Submitter: Keith Moore     date: Mon Apr 12 17:14:45 1993
  468.  
  469.       Three different C compilers came with the Dec 1988 release of AOS:
  470.  
  471.       "hc" is the MetaWare High C compiler, version 2.1n.
  472.  
  473.       "hc1.4" is an old version of MetaWare High C.
  474.  
  475.       "pcc" is a port of the Portable C Compiler (dating back to Unix V7
  476.       days) to the RT.  It does not generate very good code, but is
  477.       sometimes useful to work around hc bugs.
  478.  
  479.       Each of the compilers is useful sometimes; none of them suffices
  480.       for every occasion.  The MetaWare compilers generate reasonably good 
  481.       code, but are notorious for optimizer bugs.  They recognize a language
  482.       which is almost, but not quite, ANSI C.  (One of its worst sins is
  483.       #defining __STDC__ when the language it accepts is not ANSI C; 
  484.       adding a -U__STDC__ to the command line cures all kinds of evil.) 
  485.       Pcc is sometimes good for compiling old code that the MetaWare compiler 
  486.       barfs on, when you don't care about performance.
  487.  
  488.       In fact there were at least three versions of hc2.1 available at
  489.       various times...hc2.1n was supplied with the Dec 1988 system, and
  490.       hc2.1s and hc2.1y were available via uucp from 'ibmsupt' later on.
  491.  
  492.       Hc2.1n is buggy enough that you'll have trouble, say, building a
  493.       working copy of X11R? with it.  Unfortunately, even the latest of
  494.       these (hc2.1y) had bugs in code generation which caused kernels
  495.       based on this compiler to break.  In general, however, you can use
  496.       hc2.1s or hc2.1y.
  497.  
  498.       To find out what version you have, compile a small program and look
  499.       at the resulting .o file.  Like so:
  500.  
  501.           echo 'main() {printf ("hello,world\n"); }' > foo.c
  502.           cc -c foo.c
  503.           nm foo.o | grep hc2.1
  504.  
  505.       ...and you'll see something like
  506.  
  507.           00000000 A .oVhc2.1y
  508.  
  509.       Here's a small hack that allows me to use these interchangably:
  510.  
  511.       ===========================================================
  512.     #include <stdio.h>
  513.  
  514.     /*
  515.      * hc-hack.c
  516.      *
  517.      * This program allows you to install several different versions
  518.      * of hc and run each of them by name (e.g. "hc2.1s").
  519.      * This is useful because no version of hc yet produced compiles
  520.      * everything without significant brain damage. 
  521.      * To install, copy this binary to somewhere in the
  522.      * search path (perhaps "/usr/bin"), and create a link for every 
  523.      * version of hc you have (example: "ln hc-hack hc2.1n").
  524.      * Then create a directory for each version of hc in /usr/lib
  525.      * (example: /usr/lib/hc2.1n), and place the appropriate versions
  526.      * of hc1com and hc2com in that directory.
  527.      * One of these directories will probably contain links to the copies
  528.      * of hc[12]com in /usr/lib, which hc uses by default.
  529.      *
  530.      * Now you can run hc2.1n, hc2.1s, or hc2.1y as you need to.
  531.      */
  532.     
  533.     main (argc, argv)
  534.     char **argv;
  535.     {
  536.         char *basename;
  537.         char *strrchr (char *, char);
  538.         char **new_argv;
  539.         char hc_lib_dir[1024];
  540.         char *calloc (unsigned int, unsigned int);
  541.         int i;
  542.     
  543.         basename = strrchr (argv[0], '/');
  544.         if (basename == NULL)
  545.             basename = argv[0];
  546.         else
  547.             basename = basename + 1;
  548.     
  549.         sprintf (hc_lib_dir, "-B/usr/lib/%s/", basename);
  550.     
  551.         new_argv = (char **) calloc (argc + 2, sizeof (char *));
  552.         new_argv[0] = "hc";
  553.         new_argv[1] = hc_lib_dir;
  554.         for (i = 1; i < argc; ++i)
  555.             new_argv[i + 1] = argv[i];
  556.         new_argv[argc + 1] = NULL;
  557.     
  558.         fprintf (stderr, "%s", new_argv[0]);
  559.         for (i = 1; i < argc + 1; ++i)
  560.             fprintf (stderr, " %s", new_argv[i]);
  561.         fprintf (stderr, "\n");
  562.     
  563.         execv ("/bin/hc", new_argv);
  564.         perror ("/bin/hc");
  565.         exit (1);
  566.     }
  567.       ===========================================================
  568.  
  569.      In addition to the compilers above, gcc 2.x can generate code
  570.      for the RT.  It is availble for anonymous ftp prep.ai.mit.edu,
  571.      directory pub/gnu, and from other GNU/FSF archive sites.
  572.      ==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**
  573.  
  574. ------------------------------
  575. A.7 - How do I make new SAUTIL and Installation Miniroot diskettes?
  576.  
  577.      ==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**
  578.      Submitter: Keith Moore     date: Mon Apr 12 17:14:45 1993
  579.  
  580.       Become "root" and do the following:
  581.  
  582.           % cd /usr/sys/dist
  583.           % make MINIROOT
  584.           % make diskette
  585.           % sautil
  586.  
  587.       + "make MINIROOT" creates a MINIROOT kernel by munging a copy of
  588.          the system GENERIC kernel config file and doing a make. 
  589.          It takes a long time.
  590.       + "make diskette" copies the necessary files for an Installation
  591.         Miniroot diskette to a 1.2 Mbyte 5 1/4 inch floppy disk.
  592.       + "sautil" creates a bootable standalone utilities disk on a 
  593.         360K 5 1/4 inch floppy disk.
  594.  
  595.       Both "make diskette" and "sautil" will format the disk for you.
  596.       Be sure and use the right kind of disk for each.
  597.      ==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**
  598.  
  599. ------------------------------
  600. A.8 -  Where can I find an AOS device driver for:
  601.  
  602.        + WD8003 ethernet card
  603.       Anon ftp to ftp.cis.ufl.edu (128.227.100.252),
  604.          directory ibm-rt-fixes,  file wd8003e.tar.Z
  605.  
  606.        + Adaptec SCSI
  607.       Anon ftp to ftp.cis.ufl.edu (128.227.100.252),
  608.      directory ibm-rt-fixes, file scsi.tar.Z
  609.  
  610. ------------------------------
  611. A.9 - Where can I get X11R5 for AOS and how do I get it running?
  612.  
  613.       [Someone needs to fill this one in...particularly the stuff
  614.       about the different X servers like the one for the megapel that
  615.       didn't come with the MIT code. - MW ] 
  616.  
  617. ------------------------------
  618. A.10 - What other operating systems are available for the RT?
  619.  
  620.       At the time of this posting, the following operating systems 
  621.       have been available for the RT processor.  Availablility of these
  622.       systems is unknown and unfortunately problematic.
  623.  
  624.     [ This section needs LOTS of work! - MW ]
  625.  
  626.      AIX V2 -  Advanced Interactive Executive
  627.        Vendor:  International Business Machines
  628.            Systems: IBM PC RT 6150 and 6151
  629.            Announced: Jan 1, 1986 (AIX V1.0)
  630.        Available: Not generally, discontinued on June 1, 1991.
  631.        Last Version: V2.2.1
  632.        Distribution: Binary format only, on installp disks.
  633.              See section S.5 in the AIX FAQ for more information.
  634.        Information source: IBM announcement letters 286-004,
  635.          286-011 and 286-259
  636.        Note: Other versions of AIX exist for other platforms:
  637.         AIX V1.3 - IBM PS/2 and compatible 80386 processors.
  638.         AIX/ESA  - IBM 3090 series mainframes
  639.         AIX V3.2 - IBM Risc/System 6000 processors.
  640.  
  641.     AOS    -  Academic Operating System
  642.        Vendor:  IBM
  643.        Available: Not generally.  Originally from IBM, but most academic
  644.                       instutions that have RT systems and Berkley source
  645.                       liscenses were able to get the full source.
  646.        Last Version: AOS43 Dec88 ?
  647.        Distribution: Source
  648.        Information: IBM Announcement letter xxx-xxx,
  649.                         RPQ P83008 Program Number 5799-WZQ
  650.                         and usenet news information.
  651.  
  652.     BSD/RENO  - ?
  653.        Vendor:  Berkley?
  654.        Available: Unknown.  This version is a combination of the AOS
  655.               drivers and low level support routines, with the
  656.               RENO distribution of BSD.  Never made generally
  657.               available.  Found at academic instutions that have
  658.               access to both AOS and RENO sources.
  659.        Version: Reno?
  660.        Distribution: Source?
  661.        Information source: Netnews discussions.
  662.     
  663.         MACH   - ?
  664.        Vendor: Mt. Xinu ?
  665.        Available: ?
  666.        Version: msd 2.6 ?
  667.        Distribution: ?
  668.        Information source: Gleaned from Netnews posting May 21, 1991
  669.     
  670.         PICK   - (Named after author Dick Pick, of PICK Systems, Inc.)
  671.        Licensee: Seattle OS, Inc., PICK Systems, Inc. Major shareholder.
  672.            Systems: IBM Series/1 and IBM PC RT
  673.            Completed: 1982 and 1987, respectively
  674.            Processor: IBM series/1 and PC RT
  675.        Available: Unknown
  676.        Version: ?
  677.        Distribution: Unknown, Binary system images?
  678.            Information source: Exploring the PICK Operating System
  679.         By Jonathan E. Sisk and Steve VanArsdale
  680.         Hayden Books, Second Edition 1989
  681.         ISBN 0-672-48412-9
  682.        Note: PICK is available for a variety of processor hardware and
  683.                  platforms including, but not limited to:
  684.          IBM PC/XT/AT/RT/Series-1 and IBM 4331/4361/303x/9370 (PICK/370),
  685.          Intel 8086/80286/80385, Motorola MC68000/68020 (several vendors),
  686.              Zilog Z8000 (ADDS Mentor), HP 3000, Microdata, Nixdorf 8890 VM.
  687.  
  688. ------------------------------
  689. A.11 - Using non-IBM ESDI drives with AOS.
  690.  
  691.       Needs filling in. ?????
  692.       - procedure steps for formatting, adding, managment, ect..
  693.  
  694. ------------------------------
  695. A.12 - Using a Non-IBM SCSI adapter with AOS.
  696.  
  697.      Using a Non-IBM SCSI adapter and single ended disks is possible with
  698.      AOS using a different SCSI card, and additional device driver support. 
  699.  
  700.       Needs filling in. ?????
  701.       - procedure steps for formatting, adding, managment, ect..
  702.  
  703. ------------------------------
  704. A.13 - Modifying AOS to support higher serial port speeds.
  705.  
  706.      ==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**
  707.      Submitter: peter honeyman <honey@citi.umich.edu>
  708.      Subject: replacement asy.c driver for faster line speeds.
  709.  
  710.      The center for information technology integration at the university of
  711.      Michigan modified the asy driver to support speeds up to 57.6 kbps.
  712.      The major changes are:
  713.         1) Simply to drain the fifo into a private buffer before handing
  714.            characters to the upstream line discipline. 
  715.         2) hardware flow control.
  716.  
  717.      AOS source licensees may request driver modifications from:
  718.        info@citi.umich.edu
  719.  
  720.      A bundle consisting of asy.c and asyreg.h is about 35k. 
  721.      I have not made diffs against the original files.  
  722.      ==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**
  723.  
  724. ------------------------------
  725. A.14 - Creating boot records on ESDI disk drives.
  726.  
  727.      ==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**==**
  728.      Submitter: Mark Dapoz  <md@bsc.no>
  729.      Date: 19 Feb 94 16:37:54 GMT
  730.      Organization: Bergen Scientific Centre, Bergen, NORWAY
  731.  
  732. In article <0hNMLv=0Bwxd9CQU84@transarc.com> Pat_Barron@transarc.com writes:
  733. >I'm trying to craft an AOS boot block (like /usr/mdec/hd114eboot)
  734. >for a 3rd-party ESDI disk, to boot an RT off of it.  All of the boot
  735. >blocks are subtly different, but only in a few bytes (most are
  736. >different from each other in less than 10 bytes).  How can I make a
  737. >boot block for a new device?  I can't seem to find the sources for the
  738. >boot blocks themselves anywhere - I've looked in /sys/standca which
  739. >seemed to be the obvious place, but found nothing useful.  Help?
  740.  
  741. There are no utilities provided with AOS that let you create the boot
  742. blocks.  I hacked together the program below when I had to create a
  743. boot block for an oddball drive.  Perhaps you can use it as a starting
  744. point for what you need to do.
  745.  
  746. /*
  747.    mkbrec.c - build a boot record for the RT for various ESDI disks
  748.         Mark Dapoz (md@bsc.no)
  749. */
  750.  
  751. #include <stdio.h>
  752. #include <sys/types.h>
  753. #include <rtio/hdconfig.h>
  754.  
  755. main(argc, argv)
  756. int argc;
  757. char **argv;
  758. {
  759.     extern char *optarg;
  760.     extern int optind;
  761.     int ch;
  762.  
  763.     char *progname=argv[0];
  764.     char *model=NULL;
  765.     int pcyl=0, hd=0, sec=0;
  766.  
  767.     while ((ch = getopt(argc, argv, "m:c:h:s:")) != EOF) {
  768.          switch(ch) {
  769.         case 'm':
  770.             model=optarg;
  771.             break;
  772.         case 'c':
  773.             pcyl=atoi(optarg);
  774.             break;
  775.         case 'h':
  776.             hd=atoi(optarg);
  777.             break;
  778.         case 's':
  779.             sec=atoi(optarg);
  780.             break;
  781.         case '?':
  782.         default:
  783.             usage(progname);
  784.             exit(0);
  785.         }
  786.     }
  787.     argc -= optind;
  788.     argv += optind;
  789.     if ((model != NULL && (pcyl || hd || sec)) || 
  790.         (model == NULL && (!pcyl && !hd && !sec))) {
  791.         usage(progname);
  792.         exit(0);
  793.     }
  794.     if (model != NULL) {
  795.         if (!strcmp(model, "hd114e"))
  796.             mk_boot_rec(915, 7, 35, 0, 0xb4, 0, 0, 1);  /* hd114e */
  797.         else if (!strcmp(model, "hd70e"))
  798.             mk_boot_rec(583, 7, 35, 2, 0x30, 0, 0, 1);  /* hd70e */
  799.         else if (!strcmp(model, "hd70r"))
  800.             mk_boot_rec(566, 7, 36, 0, 0, 0, 0, 0);     /* hd70r */
  801.         else if (!strcmp(model, "hd310h"))
  802.             mk_boot_rec(1189, 15, 34, 1, 9, 0, 0, 1);   /* hd310h */
  803.         else if (!strcmp(model, "hd310e"))
  804.             mk_boot_rec(1225, 15, 33, 1, 0x2c, 0, 0, 1);/* hd310e */
  805.         else if (!strcmp(model, "hd442c"))
  806.             mk_boot_rec(1412, 15, 36, 0, 0, 0, 0, 1);   /* hd442c */
  807.         else {
  808.             models();            /* unknown */
  809.             exit(0);
  810.         }
  811.     } else
  812.         mk_boot_rec(pcyl, hd, sec);        /* user specified */
  813. }
  814.  
  815. usage(cmd)
  816. char *cmd;
  817. {
  818.     fprintf(stderr, "%s: [-m model] | [ -c num_cyl -h num_hd -s num_sec ]\n", cmd);
  819. }
  820.  
  821. models()
  822. {
  823.     fprintf(stderr, "Only the following disk models are known: hd70e hd70r hd114e hd310h\n");
  824.     fprintf(stderr, "                                          hd310e hd442c\n");
  825. }
  826.  
  827. mk_boot_rec(pcyl, hd, sec, r11, r12, r13, r14, r21)
  828. int pcyl, hd, sec;        /* disk geometry */
  829. short r11, r12, r13, r14, r21;    /* misc reserved values */
  830. {
  831.     struct boothdr hdr;
  832.  
  833.     bzero(&hdr, sizeof(struct boothdr));
  834.  
  835.     hdr.boot_check=0x459;        /* constant for ESDI disks */
  836.     hdr.boot_lastcyl=pcyl-2;
  837.     hdr.boot_lasttrack=hd-1;
  838.     hdr.boot_lastsect=sec;
  839.     hdr.boot_sectorsize=512;    /* constant for ESDI disks */
  840.     hdr.boot_interleave=0;        /* mostly constant */
  841.     hdr.boot_sectorcount=(pcyl-1)*hd*sec;
  842.     hdr.boot_formatdate=0;
  843.     hdr.boot_cyl=0;            /* constant */
  844.     hdr.boot_track=4;        /* constant for ESDI disks */
  845.     hdr.boot_sector=1;        /* constant */
  846.     hdr.boot_length=(hd-hdr.boot_track)*sec+15;
  847.     hdr.boot_entry=0;
  848.     hdr.boot_vrmminidisk=0;
  849.     hdr.boot_llp=0;
  850.     hdr.boot_vrmlength=0;
  851.  
  852.     hdr.boot_ibma[0]=0xc9;        /* IBMA in ebcdic */
  853.     hdr.boot_ibma[1]=0xc2;
  854.     hdr.boot_ibma[2]=0xd4;
  855.     hdr.boot_ibma[3]=0xc1;
  856.  
  857.     hdr.boot_reserved1[0]=r11;    /* not sure what these are */
  858.     hdr.boot_reserved1[1]=r12;
  859.     hdr.boot_reserved1[2]=r13;
  860.     hdr.boot_reserved1[3]=r14;
  861.  
  862.     hdr.boot_reserved2[0]=r21;    /* constant? */
  863.     hdr.boot_reserved2[1]=0x00;
  864.     hdr.boot_reserved2[2]=0x00;
  865.  
  866.     write(1, &hdr, sizeof(struct boothdr));
  867. }
  868.  
  869.  
  870.  
  871. ------------------------------
  872. 9.0   Credits, Acknowledgements and other information.
  873.  
  874. X.1 - Acknolowgements and copyright information.
  875.  
  876.    This file is provided AS IS with no warranties of any kind as to the
  877.    usefullness/correctness of these procedures/questions.  The author
  878.    shall have no liability with respect to the infringement of copyrights,
  879.    trade secrets or any patents by this file or any part thereof.  In no
  880.    event will the author be liable for any lost revenue or profits or
  881.    other special, indirect and consequential damages.
  882.  
  883.    IBM, AIX, AT, XT, RT, RT PC and RT Personal Computer are trademarks of
  884.      International Business Machines Inc.
  885.    UNIX is a registered trademark of American Telephone & Telegraph in the
  886.      United States of America and other countries.
  887.    Any other trademarks not specifically mentioned are owned by their
  888.      respective companies.
  889.  
  890. X.4 - Credits for AOS:
  891.  
  892.    The following people have either submitted articles for inclusion,
  893.    made suggestions, or had parts of old articles included within
  894.    re-arranged information.  I wish to thank them for their assistance.
  895.    If you want your name dropped please let me know.
  896.  
  897.   Keith Moore               <moore@cs.utk.edu>     BITNET: moore@utkvx
  898.   Mark Dapoz                <md@bsc.no>
  899.   Peter Honeyman            <honey@citi.umich.edu>
  900.   Christopher J. Vandemore  <vandemor@notrump.mis.tandem.com>
  901.  
  902. ========================= end of FAQ ibm-rt-faq/aos ===========================
  903.  
  904. Mark Whetzel                          | My own RT system.. My own thoughts..
  905. DOMAIN: markw@antimatr.hou.tx.us      | IBM RT/135 running AIX 2.2.1 
  906. UUCP ..!menudo!lobster!antimatr!markw | comp.sys.ibm.pc.rt FAQ maintainer
  907.